草庐IT

leetcode 2744

全部标签

LeetCode:35. 搜索插入位置

🍎道阻且长,行则将至。🍓🌻算法,不如说它是一种思考方式🍀算法专栏:👉🏻123一、🌱35.搜索插入位置题目描述:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为O(logn)的算法。来源:力扣(LeetCode)难度:简单提示:1-104nums为无重复元素的升序排列数组-104🌴解题这个题要求O(logn)的算法,且就描述来看也是一个二分法的模子,也不用去考虑暴力搜索了。二分法不同的地方在于没有目标元素的时候要求返回一个插入的位置。那是不是在判断left不成立的时候插入,而最后的时刻可能是left右移

LeetCode:35. 搜索插入位置

🍎道阻且长,行则将至。🍓🌻算法,不如说它是一种思考方式🍀算法专栏:👉🏻123一、🌱35.搜索插入位置题目描述:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为O(logn)的算法。来源:力扣(LeetCode)难度:简单提示:1-104nums为无重复元素的升序排列数组-104🌴解题这个题要求O(logn)的算法,且就描述来看也是一个二分法的模子,也不用去考虑暴力搜索了。二分法不同的地方在于没有目标元素的时候要求返回一个插入的位置。那是不是在判断left不成立的时候插入,而最后的时刻可能是left右移

LeetCode 1079. Letter Tile Possibilities【哈希表,回溯,动态规划,排列组合】中等

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章中,我不仅会讲解多种解题思路及其优化,还会用多种编程语言实现题解,涉及到通用解法时更将归纳总结出相应的算法模板。为了方便在PC上运行调试、分享代码文件,我还建立了相关的仓库:https://github.com/memcpy0/LeetCode-Conquest。在这一仓库中,你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目

leetcode203. 移除链表元素

个人主页:平行线也会相交欢迎点赞👍收藏✨留言✉加关注💓本文由平行线也会相交原创收录于专栏【LeetCode】🍓希望我们一起努力、成长,共同进步。题目链接给你一个链表的头节点head和一个整数val,请你删除链表中所有满足Node.val==val的节点,并返回新的头节点。示例一:输入:head=[1,2,6,3,4,5,6],val=6输出:[1,2,3,4,5]示例二:输入:head=[],val=1输出:[]示例三:输入:head=[7,7,7,7],val=7输出:[]解题思路:创建两个指针pre和cur,pre指向NULL,cur指向head。对cur进行迭代,如果cur的值等于待删除

【LeetCode: 剑指 Offer II 089. 房屋偷盗(打家窃舍) | 暴力递归=>记忆化搜索=>动态规划】

🍎作者简介:硕风和炜,CSDN-Java领域新星创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎🍎座右铭:人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯🎯目录题目链接题目描述求解思路&实现代码&运行结果暴力递归求解思路实现代码运行结果记忆化搜索求解思路实现代码运行结果动态规划求解思路实现代码空间优化运行结果共勉题目链接剑指OfferII089.房屋偷盗198.打家劫舍题目描述一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响小偷偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两

leetcode583 两个字符串的删除操作

题目给定两个单词word1和word2,返回使得word1和word2相同所需的最小步数。每步可以删除任意一个字符串中的一个字符。示例输入:word1=“sea”,word2=“eat”输出:2解释:第一步将“sea”变为“ea”,第二步将"eat"变为“ea”解析这道题和上一道不同的地方在于,本题是两个字符串都可以删除,整体思路和之前的一样;用动归五部曲分析下:1.确定dp数组及其含义dp[i][j]表示,以i-1结尾的字符串word1和以j-1结尾的字符串word2,要想达到相等,需要删除元素的最少次数2.确定递推公式还是分两个部分:当word1[i-1]与word2[j-1]相同的时候,

LeetCode——矩阵中移动的最大次数

目录1、题目 2、题目解读 3、代码1、题目2684.矩阵中移动的最大次数-力扣(Leetcode)给你一个下标从 0 开始、大小为 mxn 的矩阵 grid ,矩阵由若干 正 整数组成。你可以从矩阵第一列中的 任一 单元格出发,按以下方式遍历 grid :从单元格 (row,col) 可以移动到 (row-1,col+1)、(row,col+1) 和 (row+1,col+1) 三个单元格中任一满足值 严格 大于当前单元格的单元格。返回你在矩阵中能够 移动 的 最大 次数。示例1:输入:grid=[[2,4,3,5],[5,4,9,3],[3,4,2,11],[10,9,13,15]]输出:

【数据结构与算法篇】栈与队列(详解)附加Leetcode经典笔试题

​👻内容专栏:《数据结构与算法专栏》🐨本文概括:讲述数据结构栈与队列基本知识。🐼本文作者:花碟🐸发布时间:2023.5.23文章目录一、栈1.栈的概念及结构2.栈的实现二、有效的括号三、队列1.队列的概念及结构2.队列的实现四、经典笔试题1.用队列实现栈2.用栈实现队列一、栈1.栈的概念及结构😉详解栈相关的知识可以跳转到这篇文章👉:探秘函数栈帧:『揭开函数栈帧创建与销毁的神秘面纱』栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(LastInFirstOut)的原则。就像我们往一个杯子里面

备战秋招,LeetCode算法大总结,啃下这块硬骨头

文章目录前言🚀1.算法性能分析🌈1.1时间复杂度🚀2.数组🌈2.1数组理论🌈2.2二分法🌈2.3双指针法🚀3.链表🌈3.1链表理论🌈3.2删除链表节点🚀4.哈希表🌈4.1哈希理论🌈4.2两数之合🚀5.栈和队列🚀6.二叉树🌈6.1满二叉树🌈6.2完全二叉树🚀7.回溯法🚀7.贪心算法🚀8.动态规划前言算法是程序员的内功,掌握算法不仅能帮助你在面试中过关斩将,赢取DreamOffer,更能充分锻炼你的逻辑思维与底层能力,我是一名忠实的Leetcode用户,积累的一些个人经验,尽可能地帮助大家少走弯路。🚀1.算法性能分析🌈1.1时间复杂度相信每一位录友都接触过时间复杂度,但又对时间复杂度的认识处于一种

LeetCode-230-二叉搜索树中第K小的元素

二叉搜索树中第K小的元素题目描述:给定一个二叉搜索树的根节点root,和一个整数k,请你设计一个算法查找其中第k个最小元素(从1开始计数)。示例说明请见LeetCode官网。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/kth-smallest-element-in-a-bst/著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。解法一:二叉树的中序遍历二叉搜索树的特性即中序遍历结果就是节点的顺序排列,所以通过中序遍历的方式来查找第k个最小元素,处理过程如下:首先判断特殊情况,如果二叉树为空,说明没有第K小的节点,直接返回